local json = require "cjson"

local function responseMsg(code, msg, data)
    local rtn = {}
    rtn['code'] = code
    rtn['msg'] = msg
    rtn['data'] = data
    return json.encode(rtn)
end

--验证参数
local arg = ngx.req.get_uri_args()
local device_id = arg.x_device_id
if not device_id or #device_id <= 0 then
    ngx.say(responseMsg('-1', '参数有误', nil))
    return
end

--连接redis
local redis = require "resty.redis"
red = redis:new()
--local ok, err = red:connect("127.0.0.1", 6379)   --连接redis   本机
local ok, err = red:connect("zljsz-testenvironmentdb.redis.rds.aliyuncs.com", 6379)   --连接redis  外网测试
--local ok, err = red:connect("zljsz-testenvironmentdbvpc.redis.rds.aliyuncs.com", 6379)   --连接redis  内网测试
--local ok, err = red:connect("r-m5e988082f7d0f74.redis.rds.aliyuncs.com", 6379)   --连接redis   正式
if not ok then
    ngx.say(responseMsg('-1', json.encode(err), nil))
    return
end
--连接redis密码
ok, err = red:auth('lzWu9gskZ9OQrnOP')   --连接redis  测试
--ok, err = red:auth('EZJC2BFLrhZomJiv')   --连接redis  正式

--检查这个device_id是否已经分配了group_id,没有就给随机生成一个并缓存
local groupRedisName = 'pdi:user:group:device:id:' .. device_id
local group_id = red:get(groupRedisName)
if group_id == ngx.null then
    math.randomseed(os.time())
    group_id = math.random(1,100)
    red:set(groupRedisName,group_id)
end

--组装结果返回
local res = {}
res['group_id'] = tostring(group_id)
res['is_clear_attr_map_val'] = 0
res['texts'] = {
    index_search_placeholder = "搜索你想换的新品",
    search_placeholder = "搜索你想换的新品"
}
res['renew_order_types'] = {
    {
        text = "先买新机，再回收旧机",
        type = "1",
        value = "1",
        description = "①可快速拿到新机使用;\n②购买新机后可得回收补贴至高600元"
    },
    {
        text = "先回收旧机，再买新机",
        type = "2",
        value = "2",
        description = "①先拿回收款后再购买新机;\n②回收旧机可得补贴至高1000元"
    }
}
res['privacy_policy'] = {
    content = "<font color=\"#666666\">感谢您一直以来对旧去去的信任！<br> 我们依据最新的监管要求更新了</font><strong><font color=\"#FF2641\">《旧去去隐私权政策》（点击了解详细内容）</font></strong><font color=\"#666666\">且本次更新我们做出了诸多有利于保护用户个人信息的调整。隐私政策向您说明如下：<br>1、为向您提供交易相关基本功能，经授权后我们会收集、使用必要的信息，并向您说明对应信息的业务使用场景。<br>2、基于您的明示授权，我们可能会获取设备号信息（以保障您账号与交易安全）等信息，您有权拒绝或取消授权；<br>3、我们会采取业界先进的安全措施保护您的信息安全；<br>4、未经您同意，我们不会从第三方处获取、共享或向其提供您的信息；<br>5、您可以查询、更正、删除您的个人信息。</font>",
    click_url = "https://frontstatic.zhaoliangji.com/recovery/agreement/db-star-privacy.html"
}
res['privacy_policy_1312'] = {
    content = "<font color=\"#666666\">感谢您一直以来对旧去去的信任！<br> 我们依据最新的监管要求更新了</font><a href=\"jqqgo://native_api?type=1&content=https%3a%2f%2ffrontstatic.zhaoliangji.com%2fpages%2fjqq-user-agreement%2findex.html\"><strong><font color=\"#FF2641\">《旧去去用户协议》</font></strong></a><font color=\"#666666\">和</font><a href=\"https://frontstatic.zhaoliangji.com/recovery/agreement/db-star-privacy.html\"><strong><font color=\"#FF2641\">《旧去去隐私权政策》</font></strong></a><font color=\"#666666\">且本次更新我们做出了诸多有利于保护用户个人信息的调整。隐私政策向您说明如下：<br>1、为向您提供交易相关基本功能，经授权后我们会收集、使用必要的信息，并向您说明对应信息的业务使用场景。<br>2、基于您的明示授权，我们可能会获取设备号信息（以保障您账号与交易安全）等信息，您有权拒绝或取消授权；<br>3、我们会采取业界先进的安全措施保护您的信息安全；<br>4、未经您同意，我们不会从第三方处获取、共享或向其提供您的信息；<br>5、您可以查询、更正、删除您的个人信息。</font>"
}
res['h5_url_config'] = {
    customer_service = "https://frontstatic.zhaoliangji.com/pages/jqq-common-problem/index.html?type=2",
    user_agreement = "https://frontstatic.zhaoliangji.com/pages/jqq-user-agreement/index.html"
}
res['one_repurchase'] = {
    banner_image = {
        image_url = "http://cdn.huodao.hk/recovery/20200115/8d19606b7108c081868fb7c231b785531000x1000.png",
        image_radio = 0.93
    },
    activity_content = "1）只要在旧去去回收成功，即可获得1元换购资格。回收成功1台可得1次换购资格，换购资格的数量与回收成功旧机的数量相同。\n2）根据回收成功的本机价格，可挑选对应档位或者更低价值的礼品，但1次换购资格只能挑选一档礼品。\n3）脏机（偷捡抢）、黑机（苹果套保机）、不开机机器不回收； 不在旧去去罗列的数码分类里的其他数码产品不回收； 并非旧去去四大回收品类中（手机、手表、平板电脑、笔记本、）的商品不回收。\n4）如发现恶意刷单进行恶意套利的用户，旧去去有权不予优惠、追回骗取的优惠,并拒绝其今后参加旧去去的任何优惠活动。\n5）回收成功之后，换购资格保留一个月，逾期无效。\n6）活动商品如需要退换货：\n⑴如已支付，订单状态为“待发货”，可咨询客服进行退款。【退款后活动资格将会失去】\n（2）礼品如有质量问题，请在确认签收时退回给快递，一旦确认签收或因非质量问题产生的退换货则不予处理。\n7）换购礼品限量供应，相同档位的礼品如兑换完毕，则会换成同等价位的礼品。所以有换购资格的用户请及时兑换哦~\n8）活动最终解释权归旧去去所有",
    no_ticket_tips = "提示：回收交易成功，即可获得1元换购资格"
}
res['transfer_instructions'] = "当质检机型与提交的机型一致并且质检回收价大于等于预估价时，质检完成后将自动打款到绑定的收款账号中；否则需要您进入旧去去APP，在我的-回收订单里找到对应订单点击【确认收款】按钮完成打款。"
res['evaluation_image_show'] = 0
ngx.say(responseMsg('1','success',res))
return